<?php

namespace plugin\csauto\app\middleware;

use Webman\MiddlewareInterface;
use Webman\Http\Response;
use Webman\Http\Request;

class PasswordCheck implements MiddlewareInterface
{
    public function process(Request $request, callable $next): Response
    {
        // 检查是否已经修改过初始密码
//        $user = admin();
//        return json([
//            'code' => 403,
//            'msg' => '安全提示：请先修改初始密码(右上角-个人资料-安全设置)',
//            'user' => $user,
//            'data' => isset($user['password']) && $user['password'] == "9c00c457b3045e2ad7658d440bb8ac11"
//        ]);
        if ($this->isUsingDefaultPassword()) {
            return json([
                'code' => 403,
                'msg' => '安全提示：请先修改初始密码(右上角-个人资料-安全设置)'
            ]);
        }
        return $next($request);
    }

    /**
     * 检查是否使用默认密码
     * 这里需要根据您的用户系统实现具体的检查逻辑
     */
    private function isUsingDefaultPassword(): bool
    {
//        return true;
        // 根据您的实际用户系统实现检查逻辑
        $user = admin();
        if (!$user) {
            return false;
        }

        // 示例检查逻辑，您需要根据实际情况修改
        // 例如检查是否有密码修改标记字段
        return isset($user['password']) && $user['password'] == "9c00c457b3045e2ad7658d440bb8ac11";
    }
}